﻿using System.Collections;

namespace Eneta.Portal.Forum.Rss
{
    public class RssModuleItemCollection : CollectionBase
    {
        // Fields
        private ArrayList _alBindTo = new ArrayList();

        // Methods
        public int Add(RssModuleItem rssModuleItem)
        {
            return base.List.Add(rssModuleItem);
        }

        public void BindTo(int itemHashCode)
        {
            this._alBindTo.Add(itemHashCode);
        }

        public bool Contains(RssModuleItem rssModuleItem)
        {
            return base.List.Contains(rssModuleItem);
        }

        public void CopyTo(RssModuleItem[] array, int index)
        {
            base.List.CopyTo(array, index);
        }

        public int IndexOf(RssModuleItem rssModuleItem)
        {
            return base.List.IndexOf(rssModuleItem);
        }

        public void Insert(int index, RssModuleItem rssModuleItem)
        {
            base.List.Insert(index, rssModuleItem);
        }

        public bool IsBoundTo(int itemHashCode)
        {
            return (this._alBindTo.BinarySearch(0, this._alBindTo.Count, itemHashCode, null) >= 0);
        }

        public void Remove(RssModuleItem rssModuleItem)
        {
            base.List.Remove(rssModuleItem);
        }

        // Properties
        public RssModuleItem this[int index]
        {
            get
            {
                return (RssModuleItem)base.List[index];
            }
            set
            {
                base.List[index] = value;
            }
        }
    }
}
